package cn.bonoon.kernel.descriptors.impl;

import java.lang.reflect.Field;

import cn.bonoon.kernel.descriptors.ConfigDescriptor;
import cn.bonoon.kernel.descriptors.ConfigPropertyAccessor;
import cn.bonoon.kernel.util.MD5Util;

public class ConfigDescriptorImpl extends MappableClassDescriptor<ConfigPropertyAccessor> implements ConfigDescriptor{
	
	private final String md5;

	public ConfigDescriptorImpl(Class<?> configClass) {
		super(configClass);
		md5 = MD5Util.getMD5(configClass.getName());
	}
	
	@Override
	public ConfigDescriptor initDescriptor() {
		super.initDescriptor();
		return this;
	}

	@Override
	protected ConfigPropertyAccessorImpl parseProperty(Field field) {
		return new ConfigPropertyAccessorImpl(this, field);
	}
	
	@Override
	public String md5(){
		return md5;
	}
}
